package cn.bugstack.springframework.beans.factory.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;


/**
 * Autowired注解用于标注在构造器、字段或方法上，以指示Spring框架在运行时自动注入相应的依赖对象。
 * 该注解的保留策略为运行时，即编译器会保留该注解信息，以便于Spring在运行时进行依赖注入。
 *
 * @Retention 指定该注解的保留策略为RUNTIME，即可以在运行时通过反射获取到。
 * @Target 指定该注解可以用于构造器、字段和方法上。
 */
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.CONSTRUCTOR, ElementType.FIELD, ElementType.METHOD})
public @interface Autowired {
}
